package com.wgchao.amc.mapstruct.dto;

import java.io.Serializable;

import com.wgchao.amc.common.validate.Save;
import com.wgchao.amc.common.validate.Update;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;

import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;

/**
 * @Description  
 * @Author  Wgchao
 * @Date 2019-10-29 
 */

@Data
@NoArgsConstructor
@AllArgsConstructor
@ApiModel(value="SysBaseMenuDTO",description="菜单信息")
public class SysBaseMenuDTO implements Serializable {

	private static final long serialVersionUID =  5143771985706821690L;

	@NotNull(message = "菜单主键缺失", groups = {Update.class})
	private Long id;

	/**
	 * 菜单名称
	 */
	@NotNull(message = "菜单名称缺失", groups = {Save.class, Update.class})
	@ApiModelProperty(value="菜单名称",name="menuName")
	private String menuName;

	/**
	 * 菜单标识/路径
	 */
	@ApiModelProperty(value="菜单标识/路径",name="menuUrl")
	private String menuUrl;

	/**
	 * 创建时间
	 */
	@ApiModelProperty(value="创建时间",name="createTime")
	private Date createTime;

	/**
	 * 项目标识
	 */
	@NotNull(message = "项目标识缺失", groups = {Save.class, Update.class})
	@ApiModelProperty(value="项目标识",name="proMark")
	private String proMark;

	/**
	 * 备注
	 */
	@ApiModelProperty(value="备注",name="remark")
	private String remark;

	@ApiModelProperty(value="功能列表",name="funcList")
	private List<SysBaseFuncDTO> funcList;
}
